SNiFF + Basic Concepts

What is SNiFF+?
SNiFF+ is an open and scalable programming environment for C, C++, Java, Fortran and IDL. SNiFF+ supports the following development tasks:

- Code comprehension and browsing--SNiFF+ provides very powerful browsing and cross referencing features. Powerful filtering and visualization techniques work even with very large projects with many thousands of files, tens of thousands of symbols, and millions of lines of code. No compilation is necessary to extract the symbol information, as SNiFF+ has its own fast and fault-tolerant parsers.
- Development--SNiFF+ provides strong development support. All changes in the code are immediately reflected in all the browsing tools--no recompilation is necessary.
- Documentation building--SNiFF+ offers an integrated Documentation Editor that supports incremental and iterative documentation building. The hypertext-like linking provides quick navigation between source code and documentation. The generated documentation can be converted to other document publishing formats.
- Project and code management for teams--SNiFF+'s project and working environment concepts allow for the organization of large projects and effective cooperation in teams.
- Version and configuration management--All files of any file type can be managed with SNiFF+. Advanced tools facilitate the management of versions of files and configurations of projects.
- Build support--SNiFF+'s Make Support allows you to set up and activate your build processes using SNiFF+'s GUI. It provides automatic support for multi-platform development and works with compilers, linkers, archivers and other build tools of your choice. Furthermore, it provides (recursive) make rules for C/C++, Java, IDL and FORTRAN. Using these rules, you can completely regulate the make process (e.g., by choosing the order in which your targets are built).
- Debugging support--SNiFF+ provides interfaces to a wide range of debuggers under a consistent user interface that tightly integrates debugging tasks with browsing tasks.
- Tool and control integration--Together with adaptors to external tools like compilers, debuggers and version and configuration tools, the

sniffaccess interface provides a flexible means for integrating SNiFF+ with third-party tools.